Navigation

Class Organization

(Variables)

(Functions)

Encapsulation

You can make something protected for the sake of testing.

Classes Should Be Small

Single Responsibility Principle

Summary:

Cohesion

Many variables with few methods operating on just some means another class should be created

Maintaining Cohesion Results in Many Small Classes

When classes lose cohesion, split them

Organizing for Change

Isolating From Change